//Klasse zur Erstellung von Nutzer-Objekten und diverse setter- und getter-Methoden

package value;

import java.io.Serializable;

import logik.Warenkorb;

/**
 * 
 * @author Markus Willems,Timo Remmers,Ewgeni Wilhelm
 * 
 *         Oberklasse fuer die Kunden und die Mitarbeiter mit Standardwerten
 *         fuer beide Klassen
 * 
 *@version 0.1
 */
public class Nutzer implements Serializable {
	private int       id;
	private int       plz;
	private int       tel;
	private String    name;
	private String    vorname;
	private String    login;
	private String    strasse;
	private String    ort;
	private String    mailrepeat;
	private String    passrepeat;
	private Warenkorb warenkorb;
	private String mitarbeiterStatus = "Mitarbeiter";
	private String kundenStatus = "Kunde";
	private Nutzer Nutzer;
 
	
	public Nutzer(){
		
		warenkorb = new Warenkorb();
	}
	

	/*public Nutzer(String name, int id) {
		this.name = name;
		this.id = id;
		warenkorb = new Warenkorb();
	}*/
	
	public Nutzer(String login, String passwort) {
		this.login = login;
		this.passrepeat = passwort;
	}
	
	public Nutzer(String login, String name, String vorname, String strasse, String ort, int plz, int tel, String mailrepeat,String passrepeat){
		
		this.login = login;
		this.name = name;
		this.vorname = vorname;
		this.strasse = strasse;
		this.ort = ort;
		this.plz = plz;
		this.tel = tel;
		this.mailrepeat = mailrepeat;
		this.passrepeat =passrepeat;
		warenkorb = new Warenkorb();
	}

	
	public Nutzer(int id, String login, String name, String vorname, String strasse, String ort, int plz, int tel, String mailrepeat,String passrepeat){
		this.id = id;
		this.login = login;
		this.name = name;
		this.vorname = vorname;
		this.strasse = strasse;
		this.ort = ort;
		this.plz = plz;
		this.tel = tel;
		this.mailrepeat = mailrepeat;
		this.passrepeat = passrepeat;
		warenkorb = new Warenkorb();
	}

	public String getLogin() {
		return this.login;
	}

	public void setLogin(String login) {
		this.login = login;
	}
	
	public String getVorname() {
		return this.vorname;
	}
	
	public void setVorname(String vorname) {
		this.vorname = vorname;
	}

	public String getName() {
		return this.name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
	
	public String getStrasse() {
		return this.strasse;
	}
	public void setStrasse(String strasse) {
		this.strasse = strasse;
	}
	

	public String getOrt(){
		return this.ort;
	}
	public void setOrt(String ort) {
		this.ort = ort;
	}
	
	
	public int getPlz() {
		return this.plz;
	}
	public void setPlz(int plz) {
		this.plz = plz;
	}
	
	
	public int getTel() {
		return this.tel;
	}
	public void setTel(int tel) {
		this.tel = tel;
	}


	public String getMailrepeat() {
		return this.mailrepeat;
	}
    public void setMailrepeat(String mailrepeat){
    	this.mailrepeat = mailrepeat;
    }
    
    
	public String getPassRepeat() {
		return this.passrepeat;
	}
	public void setPassrepeat(String passrepeat) {
		this.passrepeat = passrepeat;
	}
	
	public int getId(){
		return this.id;
	}
	public void setId(int id){
		this.id = id;
	}

	public String getKunde() {

		return "Kundennummer: " + this.id + "\n" + "Name: " + this.name + "\n" +
				"Vorname:" + this.vorname + "\n";
	}

	public String getMitarbeiter() {
		return "Mitarbeiter Nr: " + this.id + "\n" + "Name:" + this.name + "\n"
				+ "\n";

	}

	public Warenkorb getWarenkorb() {
		if (warenkorb == null) {
			warenkorb = new Warenkorb();
		}
		return warenkorb;
	}
	
	public String getMitarbeiterStatus(String string) {
		return this.mitarbeiterStatus;
	}
	public void setMitarbeiterStatus(String mitarbeiterStatus) {
		this.mitarbeiterStatus = "Mitarbeiter";
	}
	public String getKundenStatus(String string) {
		return this.kundenStatus;
	}
	public void setKundenSatus(String kundenStatus) {
		this.kundenStatus = "Kunde";
	}
	
	public String getStatus (){
		if (Nutzer instanceof Mitarbeiter){
			return this.mitarbeiterStatus;
		}else{
			return this.kundenStatus;
		}
	}


	


}
